Arrange to tell redisplay about changes in overlays.
authorJim Blandy <jimb@redhat.com>
Mon, 10 May 1993 00:23:47 +0000 (00:23 +0000)
committerJim Blandy <jimb@redhat.com>
Mon, 10 May 1993 00:23:47 +0000 (00:23 +0000)
commit31b245519739f916ec9e4ccb8274262aff879c69
tree7efb65938e746df65bf1f230fa1a2bcfdd0c6168
parent703f280806d8029ef900fa50a367fd53a71706ef
Arrange to tell redisplay about changes in overlays.
* xdisp.c (redisplay_region): New function.
* buffer.c (Fmove_overlay): Call redisplay_region on the areas the
overlay has enclosed or left.
(Fdelete_overlay): Call redisplay_region on the area the overlay
used to occupy.
(Foverlay_put): Call redisplay_region on the area the overlay now
occupies; we may have put a face property on it.

* xdisp.c (redisplay): If we're doing a thorough redisplay (all
windows on all frames involved), go ahead and flush the GC cache -
call clear_face_vector.

* xdisp.c (display_text_line): Apply faces to characters
according to overlays and text properties; use
compute_char_face and compute_glyph_face to figure out what
face to use, and where a new face starts.
* xterm.c (dumpglyphs): Use the upper bits of the glyphs to decide
which frame face to use.  Call GLYPH_FOLLOW_ALIASES to make sure
we're implementing the glyph table properly.  If we're not using
the default or mode line face, call intern_face to find a display
face for the frame face selected by the glyph code.  Implement
underlining.  Remove the `font' argument; we have to derive this
from the frame and face anyway.  Change all callers.
* disptab.h (GLYPH_FOLLOW_ALIASES): New macro.
src/xdisp.c